//		Unwelcome neighbors: Poverty, Media, and Anti-Migrant Sentiment in Morocco

										*Daniel Tuki*

										
* The codes below are used to sort the raw Afrobarometer dataset (Rounds 7, 8, 9, and 10). To access the Afrobaromter dataset and questionnaire vist: https://www.afrobarometer.org/

* Variable names are specified in brackets, while the item number in the questionnaire is specified in square brackets. 

* Note: After creating the variables of interest accross the survey rounds, append them to derive the pooled data upon which the analysis is based. 

* The codes below go with the four data files i.e., "raw_R7" through "raw_R10"

******************************************************************************************************
*										ROUND 7
******************************************************************************************************

//									DEPENDENT VARIABLES

* First load the data file "raw_R7"

// Hostility (hostile_migrant) [Q87D]: Measures people's willingness to have migrants as neighbors. 
codebook Q87D
gen var1 = Q87D
* To treat "don't know" responses as missing observations: 
replace var1 = . if var1 > 5
* To code the missing observation as such: 
replace var1 = . if var1 == -1
* To generate the main variable by inverting "var1" such that higher values denote greater levels of hostility towards migrants: 
gen hostile_migrant = 6 - var1

* Hostility (binary) (bin_hostile_migrant): This variable is reduced form of the dependent variable where "Strongly dislike" and "Somewhat dislike" responses are coded as 1, while the remaining three responses are coded as 0. 
gen bin_hostile_migrant = . 
replace bin_hostile_migrant = 1 if hostile_migrant == 5
replace bin_hostile_migrant = 1 if hostile_migrant == 4
replace bin_hostile_migrant = 0 if hostile_migrant == 3
replace bin_hostile_migrant = 0 if hostile_migrant == 2
replace bin_hostile_migrant = 0 if hostile_migrant == 1



// 									EXPLANATORY VARIABLE 

// Poverty index (Q8 A-E): This is an additive indicator measuring the frequency with respondents have lacked five basic needs: Food, water, medicine, fuel, and income. 

* Food: 
codebook Q8A
gen food = Q8A
* To treat "don't know" response as missing
replace food = . if food > 4

* Water:
codebook Q8B
gen water = Q8B
* To treat "don't know" response as missing
replace water = . if water > 4

* Medicine
codebook Q8C
gen medicine = Q8C
* To treat "don't know" response as missing
replace medicine = . if medicine > 4

* Fuel
codebook Q8D
gen fuel = Q8D
* To treat "don't know" response as missing
replace fuel = . if fuel > 4

* Income
codebook Q8E
gen income = Q8E
* To treat "don't know" response as missing
replace income = . if income > 4

* To form the additive poverty index: 
gen poverty_index = food + water + medicine + fuel + income

* To check the internal reliability of these five items:
alpha food water medicine fuel income



// 									CONTROL VARIABLES

// News index (news_index) (Q12A-E): Measures the frequency with which indibviduals obtain news from traditional (Radio, TV, newspapers} and non-traditional (internet and social media) news media.  

* Radio 
codebook Q12A
gen radio = Q12A
* To treat "don't know" responses as missing
replace radio = . if radio > 4

* Television
codebook Q12B
gen tv = Q12B
* To treat "don't know" responses as missing
replace tv = . if tv > 4

* Newspaper
codebook Q12C
gen newspaper = Q12C
* To treat "don't know" responses as missing
replace newspaper = . if newspaper > 4

** Traditional news media (Radio + TV + Newspaper)
gen trad_news = radio + tv + newspaper


* Internet 
codebook Q12D
gen internet = Q12D
* To treat "don't know" responses as missing
replace internet = . if internet > 4

* Social media
codebook Q12E
gen social_media = Q12E
* To treat "don't know" responses as missing
replace social_media = . if social_media > 4

** Non-traditional news media (Inernet + Social media)
gen non_trad_news = internet + social_media


* To form the news index (Traditional news media + Non-traditional news media)
gen news_index = trad_news + non_trad_news

* To check the internal reliability of these five items: 
alpha radio tv newspaper internet social_media



// Age (age) [Q1]: Measured in years
codebook Q1
tab Q1, nolabel
gen age = Q1
* To code the one respondent who refused to answer the question as missing: 
replace age = . if age == 999



// Male (male) [Q101]: Coded as 1 for males and 0 for females.
codebook Q101 
gen male = Q101
* To code females as 0: 
replace male = 0 if male == 2



// Educational level (educ) [Q97]: Measures the highest level of education attained by the respondent. 
codebook Q97
tab Q97
tab Q97, nolabel
gen educ = Q97
* To code "don't know" and "refused to answer" responses as missing: 
replace educ = . if educ > 9 
replace educ = . if educ == -1



* Unemployment (unemploy) [Q94]: Coded as 1 if the respondent is unemployed and 0 otherise -- irrespective of whether the individual is searching for a job or not. 
codebook Q94 
gen unemployed = . 
replace unemployed = 1 if Q94 == 0
replace unemployed = 1 if Q94 == 1
replace unemployed = 0 if Q94 == 2
replace unemployed = 0 if Q94 == 3



// Economy good (economy) [Q4A]: This measures respondents' assessment of the economy's present condition. 
codebook Q4A
gen economy = Q4A
* To treat "don't know" responses as missing: 
replace economy = . if economy == 9



// Urban (urban) [URBRUR]: Coded as 1 if respondent lives in an urban center and 0 if they live in a ural area. 
codebook URBRUR
gen urban = URBRUR
* To code rural areas as 0:
replace urban = 0 if urban == 2



// Felt unsafe (unsafe) [Q10A]: This variable is coded as 1 if a respondents have felt unsafe in their neighborhood at least once during the past year and 0 otherwise. 
codebook Q10A
gen unsafe = . 
replace unsafe = 0 if Q10A == 0 
replace unsafe = 1 if Q10A == 1 
replace unsafe = 1 if Q10A == 2
replace unsafe = 1 if Q10A == 3
replace unsafe = 1 if Q10A == 4



// Round (round): This indicates the survey round. 
gen round = 7



// Year (year): This indicates the year of the survey. 
gen year = 2018



// 		REGIONAL FIXED EFFECTS

*Region [REGION]: This indictaes the region in which the respondent resides. 
codebook REGION
gen region = REGION



// Migration aspirations (emiglike) [Q68A]. This is a dummy variable coded as 1 if respondents have considered moving to another country, regardless of how strong this feeling is, and 0 otherwise. 
codebook Q68A
gen emiglike = . 
replace emiglike = 0 if Q68A == 0
replace emiglike = 1 if Q68A == 1
replace emiglike = 1 if Q68A == 2
replace emiglike = 1 if Q68A == 3



//	Variables to keep
keep RESPNO hostile_migrant bin_hostile_migrant news_index radio tv newspaper internet social_media trad_news non_trad_news food water medicine fuel income poverty_index age male educ unemployed economy urban unsafe round year region emiglike


******************************************************************************************************
*										ROUND 8
******************************************************************************************************

//									DEPENDENT VARIABLES

* First load the data file "raw_R8"

// Hostility (hostile_migrant) [Q86D]: Measures people's willingness to have migrants as neighbors. 
codebook Q86D
gen var1 = Q86D
* To treat "don't know" responses as missing observations: 
replace var1 = . if var1 > 5
* To generate the main variable by inverting "var1" such that higher values denote greater levels of hostility towards migrants: 
gen hostile_migrant = 6 - var1

* Hostility (binary) (bin_hostile_migrant): This variable is reduced form of the dependent variable where "Strongly dislike" and "Somewhat dislike" responses are coded as 1, while the remaining three responses are coded as 0. 
gen bin_hostile_migrant = . 
replace bin_hostile_migrant = 1 if hostile_migrant == 5
replace bin_hostile_migrant = 1 if hostile_migrant == 4
replace bin_hostile_migrant = 0 if hostile_migrant == 3
replace bin_hostile_migrant = 0 if hostile_migrant == 2
replace bin_hostile_migrant = 0 if hostile_migrant == 1



// 									EXPLANATORY VARIABLE 

// Poverty index (Q7 A-E): This is an additive indicator measuring the frequency with respondents have lacked five basic needs: Food, water, medicine, fuel, and income. 

* Food: 
codebook Q7A
gen food = Q7A
* To treat "don't know" response as missing
replace food = . if food > 4

* Water:
codebook Q7B
gen water = Q7B
* To treat "don't know" response as missing
replace water = . if water > 4

* Medicine
codebook Q7C
gen medicine = Q7C
* To treat "don't know" response as missing
replace medicine = . if medicine > 4

* Fuel
codebook Q7D
gen fuel = Q7D
* To treat "don't know" response as missing
replace fuel = . if fuel > 4

* Income
codebook Q7E
gen income = Q7E
* To treat "don't know" response as missing
replace income = . if income > 4

* To form the additive poverty index: 
gen poverty_index = food + water + medicine + fuel + income

* To check the internal reliability of these five items:
alpha food water medicine fuel income




// 									CONTROL VARIABLES

// News index (news_index) (Q55A-E): Measures the frequency with which indibviduals obtain news from traditional (Radio, TV, newspapers} and non-traditional (internet and social media) news media.  

* Radio 
codebook Q55A
gen radio = Q55A
* To treat "don't know" responses as missing
replace radio = . if radio > 4

* Television
codebook Q55B
gen tv = Q55B
* To treat "don't know" responses as missing
replace tv = . if tv > 4

* Newspaper
codebook Q55C
gen newspaper = Q55C
* To treat "don't know" responses as missing
replace newspaper = . if newspaper > 4

** Traditional news media (Radio + TV + Newspaper)
gen trad_news = radio + tv + newspaper


* Internet 
codebook Q55D
gen internet = Q55D
* To treat "don't know" responses as missing
replace internet = . if internet > 4

* Social media
codebook Q55E
gen social_media = Q55E
* To treat "don't know" responses as missing
replace social_media = . if social_media > 4

** Non-traditional news media (Inernet + Social media)
gen non_trad_news = internet + social_media


* To form the news index (Traditional news media + Non-traditional news media)
gen news_index = trad_news + non_trad_news

* To check the internal reliability of these five items: 
alpha radio tv newspaper internet social_media



// Age (age) [Q1]: Measured in years
codebook Q1
tab Q1, nolabel
gen age = Q1
* To code the one respondent who refused to answer the question as missing: 
replace age = . if age == 998



// Male (male) [Q101]: Coded as 1 for males and 0 for females.
codebook Q101 
gen male = Q101
* To code females as 0: 
replace male = 0 if male == 2



// Educational level (educ) [Q97]: Measures the highest level of education attained by the respondent. 
codebook Q97
tab Q97
tab Q97, nolabel
gen educ = Q97



* Unemployment (unemploy) [Q95A]: Coded as 1 if the respondent is unemployed and 0 otherise -- irrespective of whether the individual is searching for a job or not. 
codebook Q95A 
gen unemployed = . 
replace unemployed = 1 if Q95A == 0
replace unemployed = 1 if Q95A == 1
replace unemployed = 0 if Q95A == 2
replace unemployed = 0 if Q95A == 3



// Economy good (economy) [Q4A]: This measures respondents' assessment of the economy's present condition. 
codebook Q4A
gen economy = Q4A
* To treat "don't know" responses as missing: 
replace economy = . if economy == 9



// Urban (urban) [URBRUR]: Coded as 1 if respondent lives in an urban center and 0 if they live in a ural area. 
codebook URBRUR
gen urban = URBRUR
* To code rural areas as 0:
replace urban = 0 if urban == 2



// Felt unsafe (unsafe) [Q8A]: This variable is coded as 1 if a respondents have felt unsafe in their neighborhood at least once during the past year and 0 otherwise. 
codebook Q8A
gen unsafe = . 
replace unsafe = 0 if Q8A == 0 
replace unsafe = 1 if Q8A == 1 
replace unsafe = 1 if Q8A == 2
replace unsafe = 1 if Q8A == 3
replace unsafe = 1 if Q8A == 4



// Round (round): This indicates the survey round. 
gen round = 8



// Year (year): This indicates the year of the survey. 
gen year = 2020



// 		REGIONAL FIXED EFFECTS

*Region [REGION]: This indictaes the region in which the respondent resides. 
codebook REGION
gen region = REGION



//	Variables to keep
keep RESPNO hostile_migrant bin_hostile_migrant news_index radio tv newspaper internet social_media trad_news non_trad_news food water medicine fuel income poverty_index age male educ unemployed economy urban unsafe round year region


******************************************************************************************************
*										ROUND 9
******************************************************************************************************

//									DEPENDENT VARIABLES

* First load the data file "raw_R9"

// Hostility (hostile_migrant) [Q87D]: Measures people's willingness to have migrants as neighbors. 
codebook Q87D
gen var1 = Q87D
* To treat "don't know" responses as missing observations: 
replace var1 = . if var1 > 5
* To generate the main variable by inverting "var1" such that higher values denote greater levels of hostility towards migrants: 
gen hostile_migrant = 6 - var1

* Hostility (binary) (bin_hostile_migrant): This variable is reduced form of the dependent variable where "Strongly dislike" and "Somewhat dislike" responses are coded as 1, while the remaining three responses are coded as 0. 
gen bin_hostile_migrant = . 
replace bin_hostile_migrant = 1 if hostile_migrant == 5
replace bin_hostile_migrant = 1 if hostile_migrant == 4
replace bin_hostile_migrant = 0 if hostile_migrant == 3
replace bin_hostile_migrant = 0 if hostile_migrant == 2
replace bin_hostile_migrant = 0 if hostile_migrant == 1



// 									EXPLANATORY VARIABLE 

// News index (news_index) (Q74A-E): Measures the frequency with which indibviduals obtain news from traditional (Radio, TV, newspapers} and non-traditional (internet and social media) news media.  

* Radio 
codebook Q74A
gen radio = Q74A
* To treat "don't know" responses as missing
replace radio = . if radio > 4

* Television
codebook Q74B
gen tv = Q74B
* To treat "don't know" responses as missing
replace tv = . if tv > 4

* Newspaper
codebook Q74C
gen newspaper = Q74C
* To treat "don't know" responses as missing
replace newspaper = . if newspaper > 4

** Traditional news media (Radio + TV + Newspaper)
gen trad_news = radio + tv + newspaper


* Internet 
codebook Q74D
gen internet = Q74D
* To treat "don't know" responses as missing
replace internet = . if internet > 4

* Social media
codebook Q74E
gen social_media = Q74E
* To treat "don't know" responses as missing
replace social_media = . if social_media > 4

** Non-traditional news media (Inernet + Social media)
gen non_trad_news = internet + social_media


* To form the news index (Traditional news media + Non-traditional news media)
gen news_index = trad_news + non_trad_news

* To check the internal reliability of these five items: 
alpha radio tv newspaper internet social_media



// Poverty index (Q6 A-E): This is an additive indicator measuring the frequency with respondents have lacked five basic needs: Food, water, medicine, fuel, and income. 

* Food: 
codebook Q6A
gen food = Q6A
* To treat "don't know" response as missing
replace food = . if food > 4

* Water:
codebook Q6B
gen water = Q6B
* To treat "don't know" response as missing
replace water = . if water > 4

* Medicine
codebook Q6C
gen medicine = Q6C
* To treat "don't know" response as missing
replace medicine = . if medicine > 4

* Fuel
codebook Q6D
gen fuel = Q6D
* To treat "don't know" response as missing
replace fuel = . if fuel > 4

* Income
codebook Q6E
gen income = Q6E
* To treat "don't know" response as missing
replace income = . if income > 4

* To form the additive poverty index: 
gen poverty_index = food + water + medicine + fuel + income

* To check the internal reliability of these five items:
alpha food water medicine fuel income




// 									CONTROL VARIABLES

// Age (age) [Q1]: Measured in years
codebook Q1
tab Q1, nolabel
gen age = Q1
* To code the one respondent who refused to answer the question as missing: 
replace age = . if age == 998



// Male (male) [Q100]: Coded as 1 for males and 0 for females.
codebook Q100 
gen male = Q100
* To code females as 0: 
replace male = 0 if male == 2



// Educational level (educ) [Q94]: Measures the highest level of education attained by the respondent. 
codebook Q94
tab Q94
tab Q94, nolabel
gen educ = Q94



* Unemployment (unemploy) [Q93A]: Coded as 1 if the respondent is unemployed and 0 otherise -- irrespective of whether the individual is searching for a job or not. 
codebook Q93A 
gen unemployed = . 
replace unemployed = 1 if Q93A == 0
replace unemployed = 1 if Q93A == 1
replace unemployed = 0 if Q93A == 2
replace unemployed = 0 if Q93A == 3



// Economy good (economy) [Q4A]: This measures respondents' assessment of the economy. 
codebook Q4A
gen economy = Q4A
* To treat "don't know" responses as missing: 
replace economy = . if economy == 9



// Urban (urban) [URBRUR]: Coded as 1 if respondent lives in an urban center and 0 if they live in a ural area. 
codebook URBRUR
gen urban = URBRUR
* To code rural areas as 0:
replace urban = 0 if urban == 2



// Felt unsafe (unsafe) [Q7A]: This variable is coded as 1 if a respondents have felt unsafe in their neighborhood at least once during the past year and 0 otherwise. 
codebook Q7A
gen unsafe = . 
replace unsafe = 0 if Q7A == 0 
replace unsafe = 1 if Q7A == 1 
replace unsafe = 1 if Q7A == 2
replace unsafe = 1 if Q7A == 3
replace unsafe = 1 if Q7A == 4



// Round (round): This indicates the survey round. 
gen round = 9



// Year (year): This indicates the year of the survey. 
gen year = 2022



// 		REGIONAL FIXED EFFECTS

*Region [REGION]: This indictaes the region in which the respondent resides. 
codebook REGION
gen region = REGION


//	Variables to keep
keep RESPNO hostile_migrant bin_hostile_migrant news_index radio tv newspaper internet social_media trad_news non_trad_news food water medicine fuel income poverty_index age male educ unemployed economy urban unsafe round year region



******************************************************************************************************
*										ROUND 10
******************************************************************************************************

//									DEPENDENT VARIABLES

* First load the data file "raw_R10"

// Hostility (hostile_migrant) [Q88D]: Measures people's willingness to have migrants as neighbors. 
codebook Q88D
gen var1 = Q88D
* To treat "don't know" responses as missing observations: 
replace var1 = . if var1 > 5
* To generate the main variable by inverting "var1" such that higher values denote greater levels of hostility towards migrants: 
gen hostile_migrant = 6 - var1

* Hostility (binary) (bin_hostile_migrant): This variable is reduced form of the dependent variable where "Strongly dislike" and "Somewhat dislike" responses are coded as 1, while the remaining three responses are coded as 0. 
gen bin_hostile_migrant = . 
replace bin_hostile_migrant = 1 if hostile_migrant == 5
replace bin_hostile_migrant = 1 if hostile_migrant == 4
replace bin_hostile_migrant = 0 if hostile_migrant == 3
replace bin_hostile_migrant = 0 if hostile_migrant == 2
replace bin_hostile_migrant = 0 if hostile_migrant == 1



// 									EXPLANATORY VARIABLE 

// News index (news_index) (Q65A-E): Measures the frequency with which indibviduals obtain news from traditional (Radio, TV, newspapers} and non-traditional (internet and social media) news media.  

* Radio 
codebook Q65A
gen radio = Q65A
* To treat "don't know" responses as missing
replace radio = . if radio > 4

* Television
codebook Q65B
gen tv = Q65B
* To treat "don't know" responses as missing
replace tv = . if tv > 4

* Newspaper
codebook Q65C
gen newspaper = Q65C
* To treat "don't know" responses as missing
replace newspaper = . if newspaper > 4

** Traditional news media (Radio + TV + Newspaper)
gen trad_news = radio + tv + newspaper


* Internet 
codebook Q65E
gen internet = Q65E
* To treat "don't know" responses as missing
replace internet = . if internet > 4

* Social media
codebook Q65D
gen social_media = Q65D
* To treat "don't know" responses as missing
replace social_media = . if social_media > 4

** Non-traditional news media (Inernet + Social media)
gen non_trad_news = internet + social_media


* To form the news index (Traditional news media + Non-traditional news media)
gen news_index = trad_news + non_trad_news

* To check the internal reliability of these five items: 
alpha radio tv newspaper internet social_media



// Poverty index (Q7 A-E): This is an additive indicator measuring the frequency with respondents have lacked five basic needs: Food, water, medicine, fuel, and income. 

* Food: 
codebook Q7A
gen food = Q7A
* To treat "don't know" response as missing
replace food = . if food > 4

* Water:
codebook Q7B
gen water = Q7B
* To treat "don't know" response as missing
replace water = . if water > 4

* Medicine:
codebook Q7C
gen medicine = Q7C
* To treat "don't know" response as missing
replace medicine = . if medicine > 4

* Fuel
codebook Q7D
gen fuel = Q7D
* To treat "don't know" response as missing
replace fuel = . if fuel > 4

* Income
codebook Q7E
gen income = Q7E
* To treat "don't know" response as missing
replace income = . if income > 4

* To form the additive poverty index: 
gen poverty_index = food + water + medicine + fuel + income

* To check the internal reliability of these five items:
alpha food water medicine fuel income




// 									CONTROL VARIABLES

// Age (age) [Q1]: Measured in years
codebook Q1
tab Q1, nolabel
gen age = Q1
* To code the one respondent who refused to answer the question as missing: 
replace age = . if age == 998



// Male (male) [Q101]: Coded as 1 for males and 0 for females.
codebook Q101
gen male = Q101
* To code females as 0: 
replace male = 0 if male == 2



// Educational level (educ) [Q96]: Measures the highest level of education attained by the respondent. 
codebook Q96
tab Q96
tab Q96, nolabel
gen educ = Q96



* Unemployment (unemploy) [Q94A]: Coded as 1 if the respondent is unemployed and 0 otherise -- irrespective of whether the individual is searching for a job or not. 
codebook Q94A 
gen unemployed = . 
replace unemployed = 1 if Q94A == 0
replace unemployed = 1 if Q94A == 1
replace unemployed = 0 if Q94A == 2
replace unemployed = 0 if Q94A == 3



// Economy good (economy) [Q4A]: This measures respondents' assessment of the economy. 
codebook Q4A
gen economy = Q4A
* To treat "don't know" responses as missing: 
replace economy = . if economy == 9



// Urban (urban) [URBRUR]: Coded as 1 if respondent lives in an urban center and 0 if they live in a ural area. 
codebook URBRUR
gen urban = URBRUR
* To code rural areas as 0:
replace urban = 0 if urban == 2



// Felt unsafe (unsafe) [Q9]: This variable is coded as 1 if a respondents have felt unsafe in their neighborhood at least once during the past year and 0 otherwise. 
codebook Q9
gen unsafe = . 
replace unsafe = 0 if Q9 == 0 
replace unsafe = 1 if Q9 == 1 
replace unsafe = 1 if Q9 == 2
replace unsafe = 1 if Q9 == 3
replace unsafe = 1 if Q9 == 4



// Round (round): This indicates the survey round. 
gen round = 10



// Year (year): This indicates the year of the survey. 
gen year = 2024



// 		REGIONAL FIXED EFFECTS

*Region [REGION]: This indictaes the region in which the respondent resides. 
codebook REGION
gen region = REGION



//  More job seekers (more_job_seekers) [Q73B]: This variable measures respondents' attitudes regarding whether the government should allow more or less immigrant job seekers into the country. 
codebook Q73B
gen more_job_seekers = Q73B
* To code "Don't know" and "Refused to answer" responses as missing observations: 
replace more_job_seekers = . if more_job_seekers > 3



// Migrants good (migrants_good) [Q73A]: This variable measures respondents' ssessment of the economic impact of immigrants in the society. 
codebook Q73A
gen migrants_good = Q73A
* To code "Don't know" and "Refused to answer" responses as missing observations: 
replace migrants_good = . if migrants_good > 4



// Migration aspirations (emiglike) [Q71A]. This is a dummy variable coded as 1 if respondents have considered moving to another country, regardless of how strong this feeling is, and 0 otherwise. 
codebook Q71A
gen emiglike = . 
replace emiglike = 0 if Q71A == 0
replace emiglike = 1 if Q71A == 1
replace emiglike = 1 if Q71A == 2
replace emiglike = 1 if Q71A == 3



// Men preferentially hired (Q49B): This variable measurs the degree to which respondents agree that when jobs are scare, men should be given peference over women. 
tab Q49B


// Women prevented from paid employment by family (Q52D): This variable measures respondents'; beliefs regarding the tfrequency with which families prevent women from taking paid employment
tab Q52D



// Main barrier to women's employment (Q94E): This variable asks respondents about the main barriers to women's participation in the labor market.
tab Q94E


//	Variables to keep
keep RESPNO hostile_migrant bin_hostile_migrant news_index radio tv newspaper internet social_media trad_news non_trad_news food water medicine fuel income poverty_index age male educ unemployed economy urban unsafe round year region more_job_seekers migrants_good emiglike Q49B Q52D Q94E




